home *** CD-ROM | disk | FTP | other *** search
/ The Very Best of Atari Inside / The Very Best of Atari Inside 1.iso / sharew / elektro / lsim_21 / bshifter.lsm < prev    next >
Encoding:
Text File  |  1989-04-23  |  2.1 KB  |  95 lines

  1. {------------------------------------------------------------------------------
  2.                             8  BIT  BARREL  SHIFTER
  3. -------------------------------------------------------------------------------
  4.  
  5.  
  6.  
  7.      This device takes its input on the D bus. The output (on the Y bus) is
  8. the input left shifted by the number of states specified on the S bus.
  9.  
  10. ------------------------------------------------------------------------------}
  11.  
  12.  
  13.  
  14. ! D0 = 1, D1 = 0, D2 = 0, D3 = 0,       { input data }
  15.   D4 = 0, D5 = 0, D6 = 0, D7 = 0;
  16.  
  17. ! Y0, Y1, Y2, Y3, Y4, Y5, Y6, Y7;       { output data }
  18.  
  19. ! S0 = 0, S1 = 0, S2 = 0;               { shift distance }
  20.  
  21.  
  22.  
  23. Y0 = /S2./S1./S0 . D0
  24.    + /S2./S1. S0 . D1
  25.    + /S2. S1./S0 . D2
  26.    + /S2. S1. S0 . D3
  27.    +  S2./S1./S0 . D4
  28.    +  S2./S1. S0 . D5
  29.    +  S2. S1./S0 . D6
  30.    +  S2. S1. S0 . D7 ;
  31.  
  32. Y1 = /S2./S1./S0 . D1
  33.    + /S2./S1. S0 . D2
  34.    + /S2. S1./S0 . D3
  35.    + /S2. S1. S0 . D4
  36.    +  S2./S1./S0 . D5
  37.    +  S2./S1. S0 . D6
  38.    +  S2. S1./S0 . D7
  39.    +  S2. S1. S0 . D0 ;
  40.  
  41. Y2 = /S2./S1./S0 . D2
  42.    + /S2./S1. S0 . D3
  43.    + /S2. S1./S0 . D4
  44.    + /S2. S1. S0 . D5
  45.    +  S2./S1./S0 . D6
  46.    +  S2./S1. S0 . D7
  47.    +  S2. S1./S0 . D0
  48.    +  S2. S1. S0 . D1 ;
  49.  
  50. Y3 = /S2./S1./S0 . D3
  51.    + /S2./S1. S0 . D4
  52.    + /S2. S1./S0 . D5
  53.    + /S2. S1. S0 . D6
  54.    +  S2./S1./S0 . D7
  55.    +  S2./S1. S0 . D0
  56.    +  S2. S1./S0 . D1
  57.    +  S2. S1. S0 . D2 ;
  58.  
  59. Y4 = /S2./S1./S0 . D4
  60.    + /S2./S1. S0 . D5
  61.    + /S2. S1./S0 . D6
  62.    + /S2. S1. S0 . D7
  63.    +  S2./S1./S0 . D0
  64.    +  S2./S1. S0 . D1
  65.    +  S2. S1./S0 . D2
  66.    +  S2. S1. S0 . D3 ;
  67.  
  68. Y5 = /S2./S1./S0 . D5
  69.    + /S2./S1. S0 . D6
  70.    + /S2. S1./S0 . D7
  71.    + /S2. S1. S0 . D0
  72.    +  S2./S1./S0 . D1
  73.    +  S2./S1. S0 . D2
  74.    +  S2. S1./S0 . D3
  75.    +  S2. S1. S0 . D4 ;
  76.  
  77. Y6 = /S2./S1./S0 . D6
  78.    + /S2./S1. S0 . D7
  79.    + /S2. S1./S0 . D0
  80.    + /S2. S1. S0 . D1
  81.    +  S2./S1./S0 . D2
  82.    +  S2./S1. S0 . D3
  83.    +  S2. S1./S0 . D4
  84.    +  S2. S1. S0 . D5 ;
  85.  
  86. Y7 = /S2./S1./S0 . D7
  87.    + /S2./S1. S0 . D0
  88.    + /S2. S1./S0 . D1
  89.    + /S2. S1. S0 . D2
  90.    +  S2./S1./S0 . D3
  91.    +  S2./S1. S0 . D4
  92.    +  S2. S1./S0 . D5
  93.    +  S2. S1. S0 . D6 ;
  94.  
  95.